package study.core.rdd.operator

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

/**
 * 转换算子之sortBy操作
 * 排序，中间存在 shuffle 的过程，会打乱数据
 *
 * @author zh
 * @date 2021/5/15 10:47
 */
object TestSortBy {
  def main(args: Array[String]): Unit = {
    val sparkConf = new SparkConf().setMaster("local[*]").setAppName("rddMap")
    val context = new SparkContext(sparkConf)

    // 准备集合
    val list = List(6, 2, 3, 1, 5, 4)
    // 创建RDD
    val rdd: RDD[Int] = context.makeRDD(list, 3)
    // 默认是升序，第二个参数可以设置升序或降序
    val result = rdd.sortBy(num => num)
    result.collect().foreach(println)
    context.stop()

    //1
    //2
    //3
    //4
    //5
    //6
  }

}
